﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DuMez.DAL;
using System.Data;

namespace DuMez.DAL
{
    class Duyurular
    {
        #region Field

        private int _duyuruID;
        private string _baslik;
        private string _icerik;
        private string _resimURL;
        private DateTime _duyuruTarihi;
        private DateTime _duyuruSonTarih;
        private int _duyuruSahibi;


        private bool _onaylandiMi;

        #endregion

        #region Properties

        public int DuyuruID
        {
            get { return _duyuruID; }
            set { _duyuruID = value; }
        }

        public string Baslik
        {
            get { return _baslik; }
            set { _baslik = value; }
        }

        public string Icerik
        {
            get { return _icerik; }
            set { _icerik = value; }
        }

        public string ResimURL
        {
            get { return _resimURL; }
            set { _resimURL = value; }
        }

        public DateTime DuyuruTarihi
        {
            get { return _duyuruTarihi; }
            set { _duyuruTarihi = value; }
        }

        public DateTime DuyuruSonTarih
        {
            get { return _duyuruSonTarih; }
            set { _duyuruSonTarih = value; }
        }

        public int DuyuruSahibi
        {
            get { return _duyuruSahibi; }
            set { _duyuruSahibi = value; }
        }
        public bool OnaylandiMi
        {
            get { return _onaylandiMi; }
            set { _onaylandiMi = value; }
        }

        #endregion

        #region Constructor

        public Duyurular()
        {
        }

        #endregion


        #region IDisposable Members
        public void Dispose()
        {

        }
        #endregion


        #region Methods

        public bool DuyuruEkle(Duyurular duyuru)
        {
            bool result = false;

            result = SqlUtility.ExecuteNonQuery("dbo.DUMEZ_DUYURU_EKLE '" + duyuru.Baslik + "','" + duyuru.Icerik + "','" + duyuru.DuyuruTarihi + "','" + duyuru.OnaylandiMi + ",'" + duyuru.DuyuruSonTarih + "'," + duyuru.DuyuruSahibi + "'");

            return result;
        }

        public bool DuyuruSil(int duyuruID)
        {
            bool result = false;

            result = SqlUtility.ExecuteNonQuery("dbo.DUMEZ_DUYURU_SIL " + duyuruID + "");

            return result;
        }

        public bool DuyuruGuncelle(Duyurular duyuru)
        {
            bool result = false;

            result = SqlUtility.ExecuteNonQuery("dbo.DUMEZ_DUYURU_GUNCELLE '" + duyuru.Baslik + "','" + duyuru.Icerik + "','" + duyuru.DuyuruTarihi + "','" + duyuru.DuyuruSonTarih + "'," + duyuru.DuyuruSahibi + "," + duyuru.DuyuruID + "");

            return result;
        }

        public DataTable ButunDuyurularıGetir()
        {
            //Bütün Duyuruları getirir
            return SqlUtility.ExecuteDataTable("dbo.DUMEZ_DUYURU_SELECT");
        }

        public DataTable SpecificDuyuruGetir(int duyuruID)
        {
            // Tek Duyuru getir
            return SqlUtility.ExecuteDataTable("dbo.DUMEZ_DUYURU_SPECIFIC_SELECT " + duyuruID + "");
        }

        public DataTable Son10DuyuruGetir()
        {
            // Son 10 Duyuruyu getir
            return SqlUtility.ExecuteDataTable("dbo.DUMEZ_DUYURU_SON10_SELECT");
        }

        public DataTable GecmisDuyurulariGetir(DateTime duyuruSonTarih)
        {
            return SqlUtility.ExecuteDataTable("dbo.DUMEZ_GECMIS_DUYURULARI_GETIR '" + duyuruSonTarih + "'");
        }

        public DataTable AktifDuyurulariGetir(DateTime duyuruSonTarih)
        {
            return SqlUtility.ExecuteDataTable("dbo.DUMEZ_AKTIF_DUYURULARI_GETIR '" + duyuruSonTarih + "'");
        }

        #endregion
    }
}
